package com.ruoyi.wwc.coupon.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 用户优惠卷对象 user_coupon
 * 
 * @author wwc
 * @date 2025-05-19
 */
public class UserCoupon extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private Long id;

    /** 用户id */
    @Excel(name = "用户id")
    private Long uId;

    /** 优惠券id */
    @Excel(name = "优惠券id")
    private Long cId;

    /** 数量 */
    @Excel(name = "数量")
    private Long num;

    /** 状态（0未使用、1已使用、2过期） */
    @Excel(name = "状态", readConverterExp = "0=未使用、1已使用、2过期")
    private Long status;

    /** 保留字段1 */
    @Excel(name = "保留字段1")
    private String reserved1;

    /** 保留字段2 */
    @Excel(name = "保留字段2")
    private String reserved2;

    private Coupon coupon;

    public Coupon getCoupon() {
        return coupon;
    }

    public void setCoupon(Coupon coupon) {
        this.coupon = coupon;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setuId(Long uId) 
    {
        this.uId = uId;
    }

    public Long getuId() 
    {
        return uId;
    }

    public void setcId(Long cId) 
    {
        this.cId = cId;
    }

    public Long getcId() 
    {
        return cId;
    }

    public void setNum(Long num) 
    {
        this.num = num;
    }

    public Long getNum() 
    {
        return num;
    }

    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }

    public void setReserved1(String reserved1) 
    {
        this.reserved1 = reserved1;
    }

    public String getReserved1() 
    {
        return reserved1;
    }

    public void setReserved2(String reserved2) 
    {
        this.reserved2 = reserved2;
    }

    public String getReserved2() 
    {
        return reserved2;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("uId", getuId())
            .append("cId", getcId())
            .append("num", getNum())
            .append("status", getStatus())
            .append("reserved1", getReserved1())
            .append("reserved2", getReserved2())
            .toString();
    }
}
